﻿#ifndef CMDLINECHARTDIALOGWAVEFORMANALYSIS_H
#define CMDLINECHARTDIALOGWAVEFORMANALYSIS_H

#include "CommandManager/CommandBase.h"

namespace PostCommand
{
    /// @brief 后处理保存图像命令
    class CmdLineChartDialogWaveformAnalysis : public CommandManager::CommandBase
    {
        Q_OBJECT

        public:
            CmdLineChartDialogWaveformAnalysis();
            ~CmdLineChartDialogWaveformAnalysis();

            bool execute() override;
            void undo() override;
            void redo() override;
            void setData(QString graphName, double cutOffFrequency, QString filterType, int filterOrder, double leftBoundary, double rightBoundary, int windowId, QString resultList)
            {
                 m_graphName = graphName; 
                 m_cutOffFrequency = cutOffFrequency; 
                 m_filterType = filterType; 
                 m_filterOrder = filterOrder; 
                 m_leftBoundary = leftBoundary; 
                 m_rightBoundary = rightBoundary; 
                 m_windowId = windowId;
                 m_resultList = resultList;
            }

        private:
            QString m_graphName{};
            double m_cutOffFrequency{};
            QString m_filterType{};
            int m_filterOrder{};
            double m_leftBoundary{};
            double m_rightBoundary{};
            int m_windowId;
            QString m_resultList{};
    };

} // namespace PostCommand

#endif
